Pivot Points High LowGaneshA Pivot Points High/Low indicator that:
Detects swing highs (ta.pivothigh) and swing lows (ta.pivotlow) using configurable left/right bar lengths.
Draws labels at the confirmed pivot points:
Down labels at pivot highs (potential resistance).
Up labels at pivot lows (potential support).
Lets you customize text color and label fill color separately for highs and lows.
It’s designed for overlay (on-price chart), with max_labels_count=500 to allow many labels.
在脚本中搜索"swing high"
AlgoZ Smart Divergence [Trend Filtered]AlgoZ Smart Divergence is a precision entry tool designed to catch market reversals by analyzing Volume Divergence combined with Multi-Timeframe Trend Filtering. Unlike standard divergence indicators that signal on every minor price fluctuation, this script uses a strict set of filters to only present high-probability trade setups that align with the broader market trend.
This is the Free Edition of the AlgoZ Suite, focused on providing clean, non-repainting Buy and Sell signals based on institutional volume flow.
How It Works The script operates on a 3-step validation process:
Volume Divergence:
It detects anomalies where volume spikes relative to price action (e.g., Price makes a Lower Low, but Volume hits a Higher High).
HTF Trend Painting:
It analyzes a Higher Timeframe (Default: 3 Hours) to determine the macro trend. If the 3H trend is Bullish, the candles turn Green. If Bearish, they turn Red.
Color Match Filtering:
The script includes a smart filter that blocks signals that go against the trend. You will only see BUY signals when the candles are Green (Uptrend) and SELL signals when the candles are Red (Downtrend).
Key Features
Volume Divergence Engine:
Identifies hidden accumulation and distribution zones.
HTF Trend Coloring:
Automatically paints your chart based on Higher Timeframe breakouts (Default: 3-Hour Trend).
Smart Signal Filtering:
Toggles are available to "Only Show Signals Matching Candle Color," ensuring you never trade against the momentum.
EMA Trend Filter:
Includes a built-in 10-period EMA filter to further refine entries.
Volatility Filters:
Optional RSI and ADX filters are included to avoid trading during low-volatility "chop."
How to Use
For Longs (Buys):
Wait for the candles to turn Green (indicating the 3-Hour trend is up) and look for a BUY label. The price must also be above the 10 EMA (if enabled).
For Shorts (Sells):
Wait for the candles to turn Red (indicating the 3-Hour trend is down) and look for a SELL label.
Risk Management:
This script is designed to catch reversals. Always place your Stop Loss below the recent swing low (for buys) or above the swing high (for sells).
Settings
Higher Timeframe:
Default is set to 3 Hours (180 minutes). You can adjust this to 1 Day or 4 Hours depending on your trading style.
EMA Length:
Default is 10.
Color Match Filter:
On by default.
ACCDv3# ACCDv3 - Accumulation/Distribution MACD with Divergence Detection
## Overview
**ACCDv3** (Accumulation/Distribution MACD Version 3) is an advanced volume-weighted momentum indicator that combines the Accumulation/Distribution (A/D) line with MACD methodology and divergence detection. It helps identify trend strength, momentum shifts, and potential reversals by analyzing volume-weighted price movements.
## Key Features
- **Volume-Weighted MACD**: Applies MACD calculation to volume-weighted A/D values for earlier, more reliable signals
- **Divergence Detection**: Identifies when A/D trend diverges from MACD momentum
- **Volume Strength Filtering**: Distinguishes high-volume confirmations from low-volume noise
- **Color-Coded Histogram**: 4-color system showing momentum direction and volume strength
- **Real-Time Alerts**: Background colors and alert conditions for bullish/bearish divergences
## Components
### 1. Accumulation/Distribution (A/D) Line
The A/D line measures buying and selling pressure by comparing the close price to the trading range, weighted by volume:
```
A/D = Σ ((2 × Close - Low - High) / (High - Low)) × Volume
```
- **Rising A/D**: More accumulation (buying pressure)
- **Falling A/D**: More distribution (selling pressure)
- **Doji Handling**: When High = Low, contribution is zero (avoids division errors)
### 2. Volume-Weighted MACD
Instead of simple EMAs, the indicator weights A/D values by volume:
- **Fast Line** (default 12): `EMA(A/D × Volume, 12) / EMA(Volume, 12)`
- **Slow Line** (default 26): `EMA(A/D × Volume, 26) / EMA(Volume, 26)`
- **MACD Line**: Fast Line - Slow Line (green line)
- **Signal Line** (default 9): EMA or SMA of MACD (orange line)
- **Histogram**: MACD - Signal (color-coded columns)
This volume-weighting ensures that periods with higher volume have greater influence on the indicator values.
### 3. Histogram Color System
The histogram uses 4 distinct colors based on **direction** and **volume strength**:
| Condition | Color | Meaning |
|-----------|-------|---------|
| Rising + High Volume | **Dark Green** (#1B5E20) | Strong bullish momentum with volume confirmation |
| Rising + Low Volume | **Light Teal** (#26A69A) | Bullish momentum but weak volume (less reliable) |
| Falling + High Volume | **Dark Red** (#B71C1C) | Strong bearish momentum with volume confirmation |
| Falling + Low Volume | **Light Red/Pink** (#FFCDD2) | Bearish momentum but weak volume (less reliable) |
Additional shading:
- **Light Cyan** (#B2DFDB): Positive but not rising (momentum stalling)
- **Bright Red** (#FF5252): Negative and accelerating down
### 4. Divergence Detection
Divergence occurs when A/D trend and MACD momentum move in opposite directions:
#### Bullish Divergence (Green Background)
- **Condition**: A/D is trending up BUT MACD is negative and trending down
- **Interpretation**: Accumulation increasing while momentum appears weak
- **Signal**: Potential bullish reversal or continuation
- **Action**: Look for entry opportunities or hold long positions
#### Bearish Divergence (Red Background)
- **Condition**: A/D is trending down BUT MACD is positive and trending up
- **Interpretation**: Distribution increasing while momentum appears strong
- **Signal**: Potential bearish reversal or weakening uptrend
- **Action**: Consider exits, tighten stops, or prepare for reversal
## Parameters
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| **Fast Length** | 12 | 1-50 | Period for fast EMA (shorter = more sensitive) |
| **Slow Length** | 26 | 1-100 | Period for slow EMA (longer = smoother) |
| **Signal Smoothing** | 9 | 1-50 | Period for signal line (MACD smoothing) |
| **Signal Line MA Type** | EMA | SMA/EMA | Moving average type for signal calculation |
| **Volume MA Length** | 20 | 5-100 | Period for volume average (strength filter) |
## Usage Guide
### Reading the Indicator
1. **MACD Lines (Green & Orange)**
- **Crossovers**: When green crosses above orange = bullish, below = bearish
- **Distance**: Wider gap = stronger momentum
- **Zero Line**: Above = bullish bias, below = bearish bias
2. **Histogram Colors**
- Focus on **dark colors** (dark green/red) for high-confidence signals
- Be cautious with **light colors** (teal/pink) - wait for volume confirmation
- Watch for **rising red bars** (V-bottom pattern) = potential bullish reversal
- Watch for **falling green bars** (Λ-top pattern) = potential bearish reversal
3. **Background Divergence Alerts**
- **Green background**: Bullish divergence - consider long entries
- **Red background**: Bearish divergence - consider exits or shorts
- Best used in combination with price action and support/resistance levels
### Trading Strategies
#### Trend Following
1. Wait for MACD to cross above zero line with dark green histogram
2. Enter long when histogram shows consecutive dark green bars
3. Exit when histogram turns light green or red appears
#### Divergence Trading
1. Wait for background divergence alert (green or red)
2. Confirm with price action (support/resistance, candlestick patterns)
3. Enter on next dark-colored histogram bar in divergence direction
4. Set stops beyond recent swing high/low
#### Volume Confirmation
1. Ignore signals during low-volume periods (light colors)
2. Take aggressive positions during high-volume confirmations (dark colors)
3. Use volume strength as position sizing guide (larger size on dark bars)
### Best Practices
✓ **Combine with price action**: Don't rely on indicator alone
✓ **Wait for dark colors**: High-volume bars are more reliable
✓ **Watch for divergences**: Early warning signs of reversals
✓ **Use multiple timeframes**: Confirm signals across 1m, 5m, 15m
✓ **Respect zero line**: Trading direction should align with MACD side
✗ **Don't chase light-colored signals**: Low volume = lower reliability
✗ **Don't ignore context**: Market structure and levels matter
✗ **Don't over-trade**: Wait for clear, high-volume setups
✗ **Don't ignore alerts**: Divergences are early warnings
## Technical Details
### Volume-Weighted Calculation Method
Traditional MACD uses simple price EMAs. ACCDv3 weights each A/D value by its corresponding volume:
```pine
// Volume-weighted fast EMA
close_vol_fast = ta.ema(ad × volume, fast_length)
vol_fast = ta.ema(volume, fast_length)
vw_ad_fast = close_vol_fast / vol_fast
// Same for slow EMA
close_vol_slow = ta.ema(ad × volume, slow_length)
vol_slow = ta.ema(volume, slow_length)
vw_ad_slow = close_vol_slow / vol_slow
// MACD is the difference
macd = vw_ad_fast - vw_ad_slow
```
This ensures high-volume periods have proportionally more impact on the indicator.
### Volume Strength Filter
Determines whether current volume is above or below average:
```pine
vol_avg = ta.sma(volume, vol_length)
vol_strength = volume > vol_avg
```
Used to select dark (high volume) vs light (low volume) histogram colors.
### Divergence Logic
```pine
// A/D trending up if above its 5-period SMA
ad_trend = ad > ta.sma(ad, 5)
// MACD trending up if above zero
macd_trend = macd > 0
// Divergence when trends oppose
divergence = ad_trend != macd_trend
// Specific conditions
bullish_divergence = ad_trend and not macd_trend and macd < 0
bearish_divergence = not ad_trend and macd_trend and macd > 0
```
## Alerts
The indicator includes built-in alert conditions:
- **Bullish Divergence**: "Bullish Divergence: A/D trending up but MACD trending down"
- **Bearish Divergence**: "Bearish Divergence: A/D trending down but MACD trending up"
To enable:
1. Click "Create Alert" button in TradingView
2. Select "ACCDv3" as condition
3. Choose "Bullish Divergence" or "Bearish Divergence"
4. Configure notification method (popup, email, webhook, etc.)
## Comparison with Standard MACD
| Feature | Standard MACD | ACCDv3 |
|---------|---------------|---------|
| **Input** | Close price | Accumulation/Distribution line |
| **Weighting** | Simple EMA | Volume-weighted EMA |
| **Divergence** | Price vs MACD | A/D vs MACD |
| **Volume Analysis** | None | Built-in strength filter |
| **Color System** | 2 colors (up/down) | 4+ colors (direction + volume) |
| **Leading/Lagging** | Lagging | More leading (volume-weighted) |
## Example Scenarios
### Scenario 1: Strong Bullish Signal
- **Chart**: MACD crosses above zero line
- **Histogram**: Dark green bars (#1B5E20) appearing
- **Volume**: Above 20-period average
- **Action**: Enter long, strong momentum with volume confirmation
### Scenario 2: Weak Bearish Signal
- **Chart**: MACD crosses below zero line
- **Histogram**: Light pink bars (#FFCDD2) appearing
- **Volume**: Below 20-period average
- **Action**: Avoid shorting, low volume = unreliable signal
### Scenario 3: Bullish Divergence Reversal
- **Chart**: Price making lower lows
- **Indicator**: A/D line trending up, MACD negative
- **Background**: Green shading appears
- **Histogram**: Transitions from red to dark green
- **Action**: Look for long entry on next dark green bar
### Scenario 4: V-Bottom Reversal
- **Chart**: Downtrend in place
- **Histogram**: Red bars start rising (becoming less negative)
- **Pattern**: Forms "V" shape at bottom
- **Confirmation**: Transitions to dark green bars
- **Action**: Bullish reversal signal, consider long entry
## Timeframe Recommendations
- **1-minute**: Scalping, very fast signals (noisy, use with caution)
- **5-minute**: Intraday momentum trading (recommended)
- **15-minute**: Swing entries, clearer trend signals
- **1-hour+**: Position trading, major trend identification
## Limitations
- **Requires volume data**: Will not work on instruments without volume
- **Lag during consolidation**: MACD is inherently trend-following
- **False signals in chop**: Sideways markets generate noise
- **Not a standalone system**: Should be combined with price action and risk management
## Version History
- **v3**: Removed traditional price MACD, using only volume-weighted A/D MACD with A/D divergence
- **v2**: Added A/D divergence detection, volume strength filtering, enhanced histogram colors
- **v1**: Basic MACD on A/D line with volume-weighted calculation
## Support & Further Reading
For questions, updates, or to report issues, refer to the main project documentation or contact the developer.
**Related Indicators in Suite:**
- **VMACDv3**: Volume-weighted MACD on price (not A/D)
- **RSIv2**: RSI with A/D divergence
- **DMI**: Directional Movement Index with A/D divergence
- **Elder Impulse**: Bar coloring system using volume-weighted MACD
---
*This indicator is for educational purposes. Always practice proper risk management and never risk more than you can afford to lose.*
MirPapa_Lib_BoxLibrary "MirPapa_Lib_Box"
GetHTFrevised(_tf, _case)
GetHTFrevised
@description Retrieve a specific bar value from a Higher Time Frame (HTF) series.
Parameters:
_tf (string) : string The target HTF string (examples: "60", "1D").
_case (string) : string Case string determining which OHLC value to request.
@return float Returns the requested HTF value or na if _case does not match.
GetHTFrevised(_tf)
Parameters:
_tf (string)
GetHTFoffsetToLTFoffset(_offset, _chartTf, _htfTf)
GetHTFoffsetToLTFoffset
@description Adjust an HTF offset to an LTF offset by calculating the ratio of timeframes.
Parameters:
_offset (int) : int The HTF bar offset (0 means current HTF bar).
_chartTf (string) : string The current chart's timeframe (e.g., "5", "15", "1D").
_htfTf (string) : string The High Time Frame string (e.g., "60", "1D").
@return int The corresponding LTF bar index. Returns 0 if the result is negative.
GetHtfFromLabel(_label)
GetHtfFromLabel
@description Convert a Korean HTF label into a Pine Script timeframe string.
Parameters:
_label (string) : string The Korean label (e.g., "5분", "1시간").
@return string Returns the corresponding Pine Script timeframe (e.g., "5", "60").
IsChartTFcomparisonHTF(_chartTf, _htfTf)
IsChartTFcomparisonHTF
@description Determine whether a given HTF is greater than or equal to the current chart timeframe.
Parameters:
_chartTf (string) : string Current chart timeframe (e.g., "5", "15", "1D").
_htfTf (string) : string HTF timeframe (e.g., "60", "1D").
@return bool True if HTF ≥ chartTF, false otherwise.
IsCondition(_boxType, _isBull, _pricePrev, _priceNow)
IsCondition
@description FOB, FVG 조건 체크.\
_boxType: "fob"(Fair Order Block) 또는 "fvg"(Fair Value Gap).\
_isBull: true(상승 패턴), false(하락 패턴).\
상승 시 현재 가격이 이전 가격보다 높으면 true, 하락 시 이전 가격이 현재 가격보다 높으면 true 반환.
Parameters:
_boxType (string) : 박스 타입 ("fob", "fvg")
_isBull (bool) : 상승(true) 또는 하락(false)
_pricePrev (float) : 이전 가격
_priceNow (float) : 현재 가격
Returns: bool 조건 만족 여부
IsCondition(_boxType, _high2, _high1, _high0, _low2, _low1, _low0)
IsCondition
@description Sweep 조건 체크 (Swing High/Low 동시 발생).\
_boxType: "sweep" 또는 "breachBoth".\
조건: high2 < high1 > high0 (Swing High) AND low2 > low1 < low0 (Swing Low).\
중간 캔들이 양쪽보다 높고 낮은 지점을 동시에 형성할 때 true 반환.
Parameters:
_boxType (string) : 박스 타입 ("sweep", "breachBoth")
_high2 (float)
_high1 (float)
_high0 (float)
_low2 (float)
_low1 (float)
_low0 (float)
Returns: bool 조건 만족 여부
IsCondition(_boxType, _isBull, _open1, _close1, _high1, _low1, _open0, _close0, _low2, _low3, _high2, _high3)
IsCondition
@description RB (Rejection Block) 조건 체크.\
_boxType: "rb" (Rejection Block).\
상승 RB: candle1=음봉, candle0=양봉, low3>low1 AND low2>low1, close1*1.001>open0, open1close0.\
이전 캔들의 거부 후 현재 캔들이 반대 방향으로 전환될 때 true 반환.
Parameters:
_boxType (string) : 박스 타입 ("rb")
_isBull (bool) : 상승(true) 또는 하락(false)
_open1 (float)
_close1 (float)
_high1 (float)
_low1 (float)
_open0 (float)
_close0 (float)
_low2 (float)
_low3 (float)
_high2 (float)
_high3 (float)
Returns: bool 조건 만족 여부
IsCondition(_boxType, _isBull, _open2, _close1, _open1, _close0)
IsCondition
@description SOB (Strong Order Block) 조건 체크.\
_boxType: "sob" (Strong Order Block).\
상승 SOB: 양봉2 => 음봉1 => 양봉0, open2 > close1 AND open1 < close0.\
하락 SOB: 음봉2 => 양봉1 => 음봉0, open2 < close1 AND open1 > close0.\
3개 캔들 패턴으로 강한 주문 블록 형성 시 true 반환.
Parameters:
_boxType (string) : 박스 타입 ("sob")
_isBull (bool) : 상승(true) 또는 하락(false)
_open2 (float) : 2개 이전 캔들 open
_close1 (float) : 1개 이전 캔들 close
_open1 (float) : 1개 이전 캔들 open
_close0 (float) : 현재 캔들 close
Returns: bool 조건 만족 여부
CreateBox(_boxType, _tf, _isBull, _useLine, _colorBG, _colorBD, _colorText, _cache)
CreateBox
@description 박스 생성 (breachMode 자동 결정).\
_boxType: "fob", "rb", "custom" → directionalHighLow, 나머지 → both.\
_tf: 시간대 (timeframe.period 또는 HTF).\
_isBull: true(상승 박스), false(하락 박스).\
_cache: HTF 사용 시 필수, CurrentTF는 na.\
반환: .
Parameters:
_boxType (string) : 박스 타입
_tf (string) : 시간대
_isBull (bool) : 상승(true) 또는 하락(false)
_useLine (bool) : 중간선 표시 여부
_colorBG (color) : 박스 배경색
_colorBD (color) : 박스 테두리색
_colorText (color) : 텍스트 색상
_cache (HTFCache) : HTF 캐시 데이터
Returns: 성공 여부와 박스 데이터
CreateBox(_boxType, _tf, _isBull, _useLine, _colorBG, _colorBD, _colorText, _cache, _customText)
CreateBox
@description 박스 생성 (커스텀 텍스트 지원, breachMode 자동 결정).\
_boxType: "fob", "rb", "custom" → directionalHighLow, 나머지 → both.\
_customText: 박스에 표시할 텍스트 (비어있으면 "시간대 박스타입" 형식으로 자동 생성).\
_isBull: true(상승 박스), false(하락 박스).\
반환: .
Parameters:
_boxType (string) : 박스 타입
_tf (string) : 시간대
_isBull (bool) : 상승(true) 또는 하락(false)
_useLine (bool) : 중간선 표시 여부
_colorBG (color) : 박스 배경색
_colorBD (color) : 박스 테두리색
_colorText (color) : 텍스트 색상
_cache (HTFCache) : HTF 캐시 데이터
_customText (string) : 커스텀 텍스트
Returns: 성공 여부와 박스 데이터
CreateBox(_boxType, _breachMode, _tf, _isBull, _useLine, _colorBG, _colorBD, _colorText, _cache, _customText)
CreateBox
@description 박스 생성 (breachMode 명시적 지정).\
_breachMode: "both"(양쪽 모두 돌파), "directionalHighLow"(방향성 high/low 돌파), "directionalClose"(방향성 close 돌파).\
_isBull: true(상승 박스), false(하락 박스).\
_customText: 박스에 표시할 텍스트 (비어있으면 "시간대 박스타입" 형식으로 자동 생성).\
반환: .
Parameters:
_boxType (string) : 박스 타입 (fob, fvg, sweep, rb, custom 등)
_breachMode (string) : 돌파 처리 방식: "both" (양쪽 모두), "directionalHighLow" (방향성 high/low), "directionalClose" (방향성 close)
_tf (string) : 시간대
_isBull (bool) : 상승(true) 또는 하락(false) 방향
_useLine (bool) : 중간선 표시 여부
_colorBG (color) : 박스 배경색
_colorBD (color) : 박스 테두리색
_colorText (color) : 텍스트 색상
_cache (HTFCache) : HTF 캐시 데이터 (CurrentTF는 na)
_customText (string) : 커스텀 텍스트 (비어있으면 자동 생성)
Returns: 성공 여부와 박스 데이터
CreateCustomBox(_boxType, _breachMode, _isBull, _top, _bottom, _left, _right, _useLine, _colorBG, _colorBD, _colorText, _text)
CreateCustomBox
@description 완전히 유연한 커스텀 박스 생성.\
사용자가 박스 위치(top, bottom, left, right), breach mode, 모든 파라미터를 직접 지정.\
조건 체크는 사용자 스크립트에서 수행하고, 이 함수는 박스 생성만 담당.\
새로운 박스 타입 추가 시 라이브러리 수정 없이 사용 가능.
Parameters:
_boxType (string) : 박스 타입 (사용자 정의 문자열)
_breachMode (string) : 돌파 처리 방식: "both", "directionalHighLow", "directionalClose", "sobClose"
_isBull (bool) : 상승(true) 또는 하락(false) 방향
_top (float) : 박스 상단 가격
_bottom (float) : 박스 하단 가격
_left (int) : 박스 시작 시간 (xloc.bar_time 사용)
_right (int) : 박스 종료 시간 (xloc.bar_time 사용)
_useLine (bool) : 중간선 표시 여부
_colorBG (color) : 박스 배경색
_colorBD (color) : 박스 테두리색
_colorText (color) : 텍스트 색상
_text (string) : 박스에 표시할 텍스트
Returns: 성공 여부와 박스 데이터
ProcessBoxDatas(_openBoxes, _closedBoxes, _useMidLine, _closeCount, _colorClose, _currentBarIndex, _currentLow, _currentHigh, _currentTime)
ProcessBoxDatas
@description 박스 확장 및 돌파 처리.\
열린 박스들을 현재 bar까지 확장하고, 돌파 조건 체크.\
_closeCount: 돌파 횟수 (이 횟수만큼 돌파 시 박스 종료).\
breachMode에 따라 돌파 체크 방식 다름 (both/directionalHighLow/directionalClose).\
종료된 박스는 _closedBoxes로 이동하고 _colorClose 색상 적용.\
barstate.islast와 barstate.isconfirmed에서 호출 권장.
Parameters:
_openBoxes (array) : 열린 박스 배열
_closedBoxes (array) : 닫힌 박스 배열
_useMidLine (bool) : 중간선 표시 여부
_closeCount (int) : 돌파 카운트 (이 횟수만큼 돌파 시 종료)
_colorClose (color) : 종료된 박스 색상
_currentBarIndex (int) : 현재 bar_index
_currentLow (float) : 현재 low
_currentHigh (float) : 현재 high
_currentTime (int) : 현재 time
Returns: bool 항상 true
UpdateHTFCache(_cache, _tf)
UpdateHTFCache
@description HTF 데이터 캐싱 (성능 최적화).\
HTF의 OHLC 데이터를 캐싱하여 매 틱마다 request.security 호출 방지.\
_cache: 기존 캐시 (없으면 na, 첫 호출 시).\
_tf: 캐싱할 시간대 (예: "60", "1D").\
새 bar 또는 bar_index 변경 시에만 업데이트, 그 외에는 기존 캐시 반환.\
Parameters:
_cache (HTFCache) : 기존 캐시 데이터 (없으면 na)
_tf (string) : 시간대
Returns: HTFCache 업데이트된 캐시 데이터
GetTimeframeSettings(_currentTF, _midTF1m, _highTF1m, _midTF5m, _highTF5m, _midTF15m, _highTF15m, _midTF30m, _highTF30m, _midTF60m, _highTF60m, _midTF240m, _highTF240m, _midTF1D, _highTF1D, _midTF1W, _highTF1W, _midTF1M, _highTF1M)
GetTimeframeSettings
@description 현재 차트 시간대에 맞는 중위/상위 시간대 자동 선택.\
_currentTF: 현재 차트 시간대 (timeframe.period).\
1분~1월 차트별로 적절한 중위/상위 시간대 매핑.\
예: 5분 차트 → 중위 15분, 상위 60분.\
반환: .\
Parameters:
_currentTF (string) : 현재 차트 시간대
_midTF1m (string)
_highTF1m (string)
_midTF5m (string)
_highTF5m (string)
_midTF15m (string)
_highTF15m (string)
_midTF30m (string)
_highTF30m (string)
_midTF60m (string)
_highTF60m (string)
_midTF240m (string)
_highTF240m (string)
_midTF1D (string)
_highTF1D (string)
_midTF1W (string)
_highTF1W (string)
_midTF1M (string)
_highTF1M (string)
Returns:
BoxData
BoxData
Fields:
_type (series string) : 박스 타입 (fob, fvg, sweep, rb, custom 등)
_breachMode (series string) : 돌파 처리 방식
_isBull (series bool) : 상승(true) 또는 하락(false) 방향
_box (series box)
_line (series line)
_boxTop (series float)
_boxBot (series float)
_boxMid (series float)
_topBreached (series bool)
_bottomBreached (series bool)
_breakCount (series int)
_createdBar (series int)
HTFCache
Fields:
_timeframe (series string)
_lastBarIndex (series int)
_isNewBar (series bool)
_barIndex (series int)
_open (series float)
_high (series float)
_low (series float)
_close (series float)
_open1 (series float)
_close1 (series float)
_high1 (series float)
_low1 (series float)
_open2 (series float)
_close2 (series float)
_high2 (series float)
_low2 (series float)
_high3 (series float)
_low3 (series float)
_time1 (series int)
_time2 (series int)
GBM Prob: nearest unswept H/L (up to 50 bars)This indicator is designed to analyze market structure and price behavior in relation to previous highs and lows. It automatically identifies prior swing highs and lows and tracks whether they have been taken by the current price movement.
The main goal of the indicator is to show which side of the market has already been cleared of liquidity and where untouched liquidity remains. Based on this data, it calculates the percentage of liquidity taken, helping traders assess the directional bias of price.
The indicator can be used as a higher timeframe filter (D1, H4) and as contextual guidance for entries on lower timeframes during the London and New York sessions. It works especially well with ICT / SMC concepts, OTE zones, and liquidity-based analysis.
Suitable for both intraday and swing trading, the indicator helps traders make more informed decisions and avoid trading against already swept liquidity.
Structure Breakout - Buy Sell IndicatorStructure Breakout - Buy Sell Indicator
📈 OVERVIEW:
A minimalist indicator that identifies market structure breakouts using swing point analysis.
Displays clear blue buy arrows and red sell arrows when price breaks key swing levels.
🔧 HOW IT WORKS:
1. Identifies swing highs and lows using configurable lookback period
2. Triggers BUY signal (blue arrow) when price closes above previous swing high
3. Triggers SELL signal (red arrow) when price closes below previous swing low
4. Uses clean visual arrows without cluttering the chart
⚙️ KEY FEATURES:
• Clean, uncluttered visual signals
• Customizable sensitivity period
• Blue arrows for buy signals (below bars)
• Red arrows for sell signals (above bars)
• No lagging repainting
• Works on all timeframes
🎯 TRADING APPLICATIONS:
• Swing trading entries
• Breakout confirmation
• Trend continuation signals
• Support/resistance breaks
⚡ SETTINGS:
• Structure Detection Period (default: 20) - Adjust sensitivity of swing detection
⚠️ RISK DISCLAIMER:
This is an educational tool. Always use proper risk management.
Past performance does not guarantee future results.
3-bar Swing Liquidity Grab📊 3-BAR SWING LIQUIDITY GRAB
WHAT IT DOES
Automatically detects 3-bar swing highs/lows and alerts you to liquidity grab moments — when price breaks structural levels to trigger stop-losses, then reverses.
SIGNALS AT A GLANCE
Signal What It Means Trade Idea
SH 🟠▼ Swing High (Resistance) Reference level
SL 🔵▲ Swing Low (Support) Reference level
LQH 🔴❌ Fake break ABOVE resistance SHORT ⬇️
LQL 🟢❌ Fake break BELOW support LONG ⬆️
HOW TO TRADE IT
Spot the trend — Is price going up or down?
Wait for signal — LQL (green) in uptrend, LQH (red) in downtrend
Enter on signal — Place order on that bar
Stop Loss — Just outside the swing level
Take Profit — At the next swing level
SETTINGS EXPLAINED
Swing length: 1 = 3-bar swing, 2 = 5-bar swing (use 1 for scalp, 2 for larger TF)
Lookback bars: Time window to find liquidity grabs (10-20 for scalp, 50+ for position)
Toggles: Show/hide swing markers and signals
BEST ON THESE TIMEFRAMES
TF Type Settings
M5-M15 Scalp SL: 1, LB: 10-15
M15-H1 Intraday SL: 1, LB: 15-20
H1-H4 Swing SL: 1-2, LB: 20-50
D+ Position SL: 2, LB: 50+
KEY RULES
✅ DO:
Trade signals aligned with major trend
Always use stop loss
Use 2-5% risk per trade
Confirm with price action
❌ DON'T:
Trade choppy/sideways markets
Ignore the trend
Chase signals
Overtrade
REAL EXAMPLE
LONG Trade (LQL Signal):
text
Uptrend → Swing Low forms at 1.0950
→ Price dips to 1.0930 (below SL)
→ Closes at 1.0955 (above SL) = GREEN ❌ (LQL)
→ BUY at 1.0960
→ Stop Loss: 1.0920
→ Take Profit: 1.1050 (previous Swing High)
WORKS ON
✅ Crypto (Bitcoin, Ethereum, Altcoins)
✅ Forex (EUR/USD, GBP/USD, etc.)
✅ Stocks & Indices
✅ Commodities (Gold, Oil, etc.)
Any asset, any timeframe, any market.
DISCLAIMER
This is a technical analysis tool, not financial advice. Past performance does not guarantee future results. Always use proper risk management and test on a demo account first.
HH HL LH LL + BOS / CHoCHHH HL LH LL + BOS / CHoCH Structure Indicator (ATR Adaptive)
This indicator provides a complete market structure framework using swing-based pivots, real-time trend detection, BOS (Break of Structure), CHoCH (Change of Character), and optional ATR-adaptive swing sensitivity.
🔹 Core Features
1. Market Structure Labels
The script detects and labels:
HH – Higher High
LH – Lower High
HL – Higher Low
LL – Lower Low
These labels help visualize trend continuation or weakness in structure.
Each label type can be individually toggled ON/OFF in settings.
2. ATR-Based Adaptive Swing Length (Optional)
Swing pivots can be calculated using:
A fixed manual swing length, or
A dynamic ATR-based swing length that adjusts automatically to volatility.
Increasing volatility → longer swings
Decreasing volatility → tighter swings
This makes structure detection more stable and timeframe-adaptive.
3. Close-Based Break of Structure (BOS)
The indicator identifies a BOS when:
Price closes above the previous swing high (Bullish BOS↑)
Price closes below the previous swing low (Bearish BOS↓)
BOS labels can be turned ON/OFF without affecting internal calculations.
4. CHoCH (Change of Character)
CHoCH is triggered when a BOS occurs against the current trend, indicating a potential trend reversal:
CHoCH↑ – Bearish → Bullish reversal
CHoCH↓ – Bullish → Bearish reversal
CHoCH remains active even when BOS labels are turned off.
5. Alerts
The indicator provides alert conditions for:
CHoCH↑ (Bullish Trend Shift)
CHoCH↓ (Bearish Trend Shift)
This allows traders to automate notifications for significant trend changes.
6. Trend State Tracking
The script internally tracks the current structure-based trend:
Uptrend
Downtrend
Undefined
The trend updates dynamically based on real BOS events.
7. Fully Backwards Compatible
The indicator generates structure, BOS, and CHoCH even when scrolling back deep in chart history, thanks to extended max_bars_back handling.
Summary
This tool provides a complete, flexible, and non-repainting framework for market structure analysis, suitable for:
SMC/ICT traders
Swing & intraday traders
Trend traders
Price action analysts
With adaptive swing detection, clean structure labeling, BOS/CHoCH logic, and alert integration, the indicator helps traders understand market transitions with clarity and precision.
KENW Liq Sweep 17This indicator is designed to alert on potential liquidity sweep events:
- In uptrends, it tracks Sell-Side Liquidity (SSL) by marking swing lows that occur during negative MACD histogram periods. It generates a long entry alert when price makes a lower low in SSL (i.e., the most recent SSL level is below the prior one), suggesting a sweep of sell-side liquidity before a potential bullish continuation.
- In downtrends, it tracks Buy-Side Liquidity (BSL) by marking swing highs that occur during positive MACD histogram periods. It generates a short entry alert when price makes a higher high in BSL (i.e., the most recent BSL level is above the prior one), indicating a sweep of buy-side liquidity before a potential bearish continuation.
MACD Momentum Structure & Volume Profile Sniper [MTF]**Description and Methodology**
This script offers a unique approach to Market Structure by moving away from traditional fractal-based highs and lows (which can be noisy). Instead, it utilizes **MACD Momentum Swings** to identify significant structural points, combined with an automated Fixed Range Volume Profile to pinpoint high-probability entry zones.
**1. Why MACD Structure? (The Core Concept)**
Traditional "ZigZag" or Fractal indicators rely solely on price action, often leading to fake-outs during low-volume consolidation.
* This script defines a "Swing High" only when the MACD Histogram crosses below zero (Momentum shifts Bearish).
* This script defines a "Swing Low" only when MACD crosses above zero (Momentum shifts Bullish).
By linking structure to momentum, we filter out weak price movements and focus on the true "heartbeat" of the trend.
**2. The "Mashup" Synergy: Structure + Volume + Logic**
This is not a random combination of indicators. Each component serves a specific step in the trading execution sequence:
* **Step 1 (Structure):** The script identifies a Change of Character (CHoCH) based on the MACD peaks described above.
* **Step 2 (Liquidity/Value):** When a CHoCH occurs, the script *automatically* draws a **Fixed Range Volume Profile (FRVP)** specifically covering the impulse leg that caused the break. This reveals the "Point of Control" (POC)—the hidden price level where the most volume occurred during the move.
* **Step 3 (The Sniper Entry):** The script creates a "Zone" around that POC. It then waits for Price to retrace into this zone.
* **Step 4 (Confirmation):** Once the zone is touched, the script monitors a lower timeframe (User selectable, default M1) for a fresh MACD crossover to trigger the final entry signal.
**Features**
* **Multi-Timeframe Dashboard:** Monitor the MACD Trend direction across 4 different timeframes simultaneously.
* **Dynamic Trendlines:** Automatically connects confirmed MACD peaks to visualize trend integrity.
* **Fibo Time Zones:** Projects potential future pivot points based on the duration of the previous swing.
* **Alert System:** Integrated alerts for Zone Touches and "Sniper" entries (Zone Touch + LTF Momentum Confirmation).
**How to Use**
1. **Identify Trend:** Look for the CHoCH labels. Green indicates a shift to Bullish, Red to Bearish.
2. **Wait for Pullback:** Do not chase the break. Wait for price to return to the Yellow POC Zone generated by the Volume Profile.
3. **Entry Trigger:** Watch for the "BUY" or "SELL" marks. These appear only when price hits the zone AND the lower-timeframe momentum aligns with the trade direction.
**Settings & Inputs**
* **Global MACD:** Adjust the sensitivity of the swing detection (Default 12, 26, 9).
* **Sniper Entry:** Select the timeframe used for the final confirmation (e.g., use M1 confirmation for an H1 chart structure).
* **VP Settings:** Customize how the Volume Profile looks on the chart.
*Disclaimer: This script is intended for educational purposes and market analysis. It does not provide financial advice.*
Smart Money Setup 08 [TradingFinder] Binary Options Gold Scalper🔵 Introduction
In the Smart Money methodology, the market is understood as a structure driven by liquidity flow. This structure forms through the movement of large orders, the accumulation of liquidity, and the reactions that occur around key price zones. The logic of Smart Money is based on the idea that price movement is not random and usually evolves with the intention of collecting liquidity and creating price inefficiencies known as imbalances.
Within this framework, several important stages including the liquidity sweep, the formation of a point of interest, the appearance of an imbalance and the transition of market structure play major roles and collectively define the broader direction of price.
In many bullish scenarios, the market begins by sweeping sell side liquidity and targeting important lows in order to collect the liquidity resting below them. This liquidity collection often becomes the starting point for creating a point of interest which usually marks the area where Smart Money begins to enter the market.
After price moves away from this point, it breaks a structural high and forms a change of character. This shift marks a transition in the balance of power between buyers and sellers and is considered the first clear signal that the market structure is changing.
After the change of character, new institutional order flow often creates a strong and rapid movement that leaves behind an imbalance. This imbalance is one of the most important elements in Smart Money analysis because price tends to return to this area in order to complete structure and restore balance.
The return into the imbalance becomes meaningful when it occurs together with the liquidity sweep, the presence of a validated point of interest and a confirmed structural transition. These conditions frequently mark the beginning of powerful movements within the Smart Money cycle.
Understanding the sequence of liquidity, point of interest, imbalance, change of character and market structure builds the foundation of Smart Money analysis and provides a clear view of the true direction of institutional strength.
Bullish Setup :
Bearish Setup :
🔵 How to Use
To use this framework effectively, the trader must analyze the market through the principles of Smart Money and observe how liquidity drives price. A trade becomes valid only when several essential components appear together in a clear and consistent order.
These components include the liquidity sweep, the formation of a point of interest, the confirmation of a change of character, the transition of market structure and the return of price into an imbalance. The method is built on the understanding that the market first collects liquidity, then shifts order flow and finally provides an entry opportunity inside an inefficient area or inside a point of interest.
For this reason, the trader must follow the path of liquidity from the moment the sweep occurs, through the point of interest and the change of character and finally into the return of price toward the imbalance. When applied correctly, this approach creates entries that are more precise, more structural and more aligned with the real behavior of the market rather than with superficial signals.
🟣 Long Position
A bullish setup in Smart Money structure begins with a liquidity sweep on the sell side. The market first targets the areas where sell side liquidity is located and collects the stops and resting liquidity under previous lows. This collection is the condition that Smart Money requires to begin creating a new order flow. After this liquidity has been taken, a point of interest forms which is usually the last bearish candle or the effective demand zone that initiated the upward movement.
Price then moves away from the point of interest and breaks a structural high which creates a change of character. This event confirms that the market structure has moved from a bearish state to a bullish one and that buying pressure has taken control of the order flow. Following this shift, a strong upward movement often occurs and creates an imbalance between candles. This imbalance reflects the entrance of strong Smart Money orders and is seen as an important confirmation of bullish strength.
When price returns to this imbalance after the displacement, the market enters a phase where Smart Money aims to complete the corrective movement and continue the upward direction. The reaction inside the imbalance when combined with the liquidity sweep, the confirmed point of interest and the change of character completes the bullish setup and forms a structure that often leads to a continuation of the bullish trend.
🟣 Short Position
A bearish setup follows the same Smart Money logic but in the opposite direction. The market begins by collecting buy side liquidity and targets the highs where buy side liquidity and resting stops are located. This liquidity sweep on the buy side becomes the starting phase for Smart Money to initiate a downward order flow. After the liquidity is collected, a bearish point of interest forms which is usually the last bullish candle or the supply zone that created the initial drop.
Price then moves away from this point and breaks the first structural low. This creates a change of character to the downside which confirms that the market structure has transitioned from bullish to bearish and that selling pressure has gained control. After this shift, a strong downward displacement appears and leaves behind a bearish imbalance that clearly shows the dominance of sellers.
As price returns to this imbalance and corrects the inefficient movement, the bearish setup becomes complete as long as the market structure remains bearish. The combination of the buy side liquidity sweep, the bearish point of interest, the change of character, the imbalance and the corrective return creates the ideal structure that Smart Money uses to continue the downward movement and develop a reliable selling opportunity.
🔵 Settings
🟣 Logic Settings
Pivot Period : Defines how many bars are analyzed to identify swing highs and lows. Higher values detect larger, slower structures, while lower values respond to faster patterns. The default value of 5 offers a balanced sensitivity.
🟣 Alert Settings
Alert : Enables alerts for SMS08.
Message Frequency : Determines the frequency of alerts. Options include 'All' (every function call), 'Once Per Bar' (first call within the bar), and 'Once Per Bar Close' (final script execution of the real-time bar). Default is 'Once per Bar'.
Show Alert Time by Time Zone : Configures the time zone for alert messages. Default is 'UTC'.
🔵 Conclusion
The Smart Money approach demonstrates that price movement is not random or based on surface level patterns. Instead, it develops through a clear cycle of liquidity collection, structural transition and corrective movement toward key price zones. By recognizing events such as the liquidity sweep, the formation of the point of interest, the change of character and the return into the imbalance, the trader gains the ability to understand order flow more accurately and identify the true direction of market structure.
Both bullish and bearish setups show that the alignment of these elements creates a transparent view of institutional behavior and reveals the source of strong movements in the market. When the trader correctly identifies this sequence, entry points become more reliable and more aligned with liquidity flow. The combination of liquidity, structure and imbalance provides a consistent framework that removes guesswork and guides decisions through the real logic of the market.
Smart Money Toolkit - PD Engine Bias Map [KedArc Quant]Description
Smart Money is an advanced multi-layer Smart Money Concepts framework that automatically detects structure shifts, premium-discount zones, and institutional order flow.
It is built around the PD Engine, which calculates the midpoint of the most recent market swing and dynamically determines BUY or SELL bias based on where current price trades relative to that equilibrium. This toolkit visualizes structure, order blocks, and bias context in one clean map, giving traders an institutional-grade view without unnecessary signal clutter.
Why It Is Unique
- All CHoCH, BOS, Order Block, FVG, and PD logic are coded from scratch.
- Uses true equilibrium (50 percent PD midpoint) for dynamic bias.
- Optimized for stability and non-repainting behavior.
- Designed for clarity with minimal, performance-safe visuals.
Entry and Exit Logic (Discretionary Framework)
- This toolkit is not a signal generator. It provides market context that guides discretionary trading.
BUY Bias (Discount Zone)
- Price trades below PD Mid: the market is in discount.
- Wait for a bullish CHoCH or reaction from a demand OB or FVG before buying.
- Target 1 = PD Mid. Target 2 = next opposite OB or FVG.
SELL Bias (Premium Zone)
- Price trades above PD Mid: the market is in premium.
- Wait for a bearish CHoCH or reaction from a supply OB or FVG before shorting.
- Target 1 = PD Mid. Target 2 = next opposite OB or FVG.
Institutional concept sequence: Bias → Structure Shift → Confirmation → Execution.
Input Configuration
Swing Sensitivity - Determines how far back to identify HH and LL pivots.
OB / FVG Detection - Toggles visual Order Block or Fair Value Gap zones.
PD Engine - Shows PD midpoint line, zone shading, and bias table.
Multi-TF Bias Sync - Optionally reads a higher timeframe bias for confirmation.
Color Themes - Switch between light, dark, or institutional palettes.
Formula / Logic Summary
Concept Formula
PD Mid (Equilibrium) (Recent Swing High + Recent Swing Low) / 2
BUY Bias close < PD Mid
SELL Bias close > PD Mid
CHoCH / BOS Pivot-based structure reversal: HH→LL or LL→HH
Order Block Last bullish or bearish candle before displacement.
FVG Gap between prior candle high/low and next candle range.
These formulas follow the structure used in institutional Smart Money Concepts.
How It Helps Traders
- Shows institutional premium and discount zones visually.
- Defines clear directional bias before entry.
- Combines structure, order blocks, FVG, and equilibrium in one layout.
- Works on any timeframe or asset.
- Prevents emotional trades by giving objective bias context.
Glossary
PD Mid Midpoint between recent swing high and low (market fair value).
Premium Zone Price above PD Mid; sellers control.
Discount Zone Price below PD Mid; buyers control.
CHoCH Change of Character, first reversal signal.
BOS Break of Structure, trend continuation confirmation.
OB Order Block, last institutional candle before move.
FVG Fair Value Gap, price imbalance often revisited.
FAQ
Q: Is this a signal indicator?
A: No. It is a contextual framework that supports manual decision-making.
Q: Does it repaint?
A: No. All structure logic is confirmed on bar close.
Q: Does it work on all markets?
A: Yes. It is purely price-based and timeframe independent.
Q: When does bias change?
A: Only after a new confirmed swing high or low.
Q: Can it be backtested?
A: You can build strategies on top of this context using your own entry and exit rules.
Disclaimer
This script is provided for educational purposes only.
It is not financial advice.
Trading carries risk. Past performance does not guarantee future results.
Use proper risk management and test on demo accounts before applying to live markets.
Morning ORB FVG Trigger✅ Overview
Morning ORB FVG Trigger is a complete intraday trading framework built around:
A Morning Opening Range Breakout (ORB)
The first Fair Value Gap (FVG) after that breakout
Strict risk management and position sizing
Optional HTF trend filter (Daily / Weekly / Monthly)
Optional Daily ATR filter to avoid extreme days
The script is designed for futures / indices / FX on intraday charts up to 15 minutes and for traders who want a clean, mechanical entry framework with clear risk.
🧠 Core idea
Define a morning opening range (e.g. 09:30–09:45).
Wait for a clean breakout above/below that range.
After the breakout, wait for the first FVG in breakout direction,
confirmed by the next candle (no immediate full reclaim).
Use a chosen stop logic + R:R factor to build risk/reward boxes.
Calculate position size based on your account risk.
(Optional) Only take trades:
In the direction of the HTF EMA trend (D/W/M).
On days where the morning range is within a band of the Daily ATR.
You can also disable all signals/boxes and use the script just as a visual ORB tool.
⏰ 1. ORB / Morning Range
Inputs (Main section)
Morning Range Session
Time window of the opening range in exchange time
Example: 09:30–09:45 for a 15-minute ORB.
You can type custom ranges (e.g. 09:30–09:35 for a 5-minute ORB).
Risk/Reward (TP factor)
Multiplier for the take-profit distance relative to the stop.
2.0 = TP is 2× the stop distance
1.5 = TP is 1.5× the stop distance
Show ORB range
If enabled, draws:
ORB high/low lines
ORB labels (e.g. 15min ORB high / low)
Optional midline
Extend ORB lines to the right (bars)
How many bars to extend the ORB high/low horizontally beyond the ORB itself.
Trade box width (bars)
Horizontal width (in bars) of:
Red risk box (entry–stop)
Green reward box (entry–TP)
Implementation details
The ORB is always calculated on 1-minute data internally, so it stays precise even on 5m/15m charts.
The script only works on intraday timeframes up to 15 minutes.
📦 2. FVG Block
Group: “FVG”
Threshold %
Minimum size of an FVG in % of price.
0 = every FVG
Higher values = only larger gaps
Auto threshold (from volatility)
If enabled, the minimum FVG size is derived from historical volatility
instead of a fixed percentage.
Allow breakout FVG partly inside ORB
Off (default): the FVG must lie fully outside the ORB.
On: the breakout FVG itself may still overlap the ORB a bit,
as long as it is the first one attached to the breakout move.
Enable FVG entry signals, boxes & alerts
On: full system – FVG detection, entry labels, risk/TP boxes, alerts.
Off: no entries, no risk/TP boxes, no alerts.
You only get the ORB and (optionally) the HTF dashboard, so you can trade your own setups.
Entry mode
Entry mode (Mid / Edge / NextOpen)
Mid – Entry at the midpoint of the FVG.
Edge – Long at the upper FVG edge, short at the lower FVG edge.
NextOpen – No limit order in the gap. Entry is placed at the next bar open after FVG confirmation.
Edge offset (ticks)
Additional offset for Edge entries:
Long:
+ticks = a bit above the FVG (more conservative)
-ticks = deeper into the FVG (more aggressive)
Short:
+ticks = a bit below the FVG
-ticks = deeper into the FVG
FVG detection logic
Uses a LuxAlgo-style 3-candle FVG pattern (gap between candle 1 and 3).
Only one FVG is taken: the first valid FVG after the ORB breakout in breakup direction.
The FVG candle is the middle bar; the script:
Detects the FVG on the previous bar.
Waits for the current bar to confirm it:
Bullish: current low must stay above the lower FVG boundary
Bearish: current high must stay below the upper FVG boundary
Only then an entry signal is generated.
🛑 3. Stop Logic
Group: “Stop Logic”
Stop mode (PrevBar / Pivot / FVG Candle)
PrevBar – Stop at the low/high of the candle before the FVG
(tight/aggressive).
FVG Candle – Stop at the low/high of the FVG candle itself
(medium).
Pivot – Stop at the most recent swing high/low
using pivotLeft / pivotRight pivots (more conservative).
Ticks (stop buffer)
Offset (in ticks) from the selected stop level.
> 0 = further away (more room, more risk)
< 0 = closer (tighter stop)
Pivot left / Pivot right
Number of candles left/right to define a swing high/low
when using Pivot stop mode.
Typical intraday values: 2–3.
The script also sanity-checks the stop:
if the calculated stop would be invalid (e.g. above entry in a long), it moves it by a minimal distance (2 ticks) to keep a valid risk.
📈 4. HTF Trend Filter (Daily / Weekly / Monthly)
Group: “HTF Trend Filter”
Enable HTF trend filter
If enabled, trades are only allowed:
Long when at least 2 of D/W/M closes are above their EMA
Short when at least 2 of D/W/M closes are below their EMA
EMA length (D/W/M)
EMA length for all three higher timeframes (Daily, Weekly, Monthly).
This helps focus entries in the direction of the dominant higher-timeframe trend.
📊 5. ATR Filter (Daily)
Group: “ATR Filter (Daily)”
Use daily ATR filter
If enabled, the height of the ORB (ORB high – ORB low) must be within
a band of the Daily ATR to allow any signals.
Daily ATR length
ATR period on the Daily timeframe.
Min ORB size vs ATR
Lower bound:
Example: 0.3 → ORB must be at least 0.3 × Daily ATR
0.0 = no minimum.
Max ORB size vs ATR
Upper bound:
Example: 1.5 → ORB must be ≤ 1.5 × Daily ATR
0.0 = no maximum.
If the ORB is too small (choppy) or too large (exhausted move), no breakout or FVG signal will be generated on that day.
🧭 6. HTF Dashboard & Signal Labels
Group: “HTF Trend Dashboard”
Show HTF dashboard
Draws a small label at the top of the chart showing:
HTF Trend (EMA X)
D: UP/FLAT/DOWN
W: UP/FLAT/DOWN
M: UP/FLAT/DOWN
Dashboard position
Top Right, Top Center, Top Left – places the dashboard at the top.
Over Risk Info – no top dashboard; instead, the HTF trend info is shown as a label near the risk box when a new signal appears.
Lookback (bars) for top anchor
How many bars to use to determine the top price level for dashboard placement.
Show HTF trend above risk box on signal
Only relevant if Dashboard position = Over Risk Info.
When enabled, a small HTF label appears near the risk box for each new trade.
Signal label vertical offset (ticks)
Vertical spacing between risk info label and HTF label.
Minimum spacing HTF/Risk (ticks)
Ensures a minimum vertical distance so the two labels don’t overlap.
HTF signal label X offset (bars)
Horizontal offset (left/right) relative to the risk info label.
⏳ 7. ORB–FVG Filters (Session & Time Window)
Group: “ORB FVG Filter”
Only same session day
If enabled, FVG entries are only allowed on the same calendar day
as the ORB. When the date changes, all state & drawings are reset.
Limit hours after ORB
Enables a time window after the ORB end.
Trading window after ORB (hours)
Length of that window in hours.
Example: 2.0 → FVG signals only in the first 2 hours after ORB end.
💰 8. Risk Management & Position Sizing
Group: “Risk Management”
Calculate position size
If enabled, the script computes suggested mini and micro contract size for you.
Account size
Your trading account size (in account currency).
Risk mode
Percent – risk is a % of account size (Account risk %).
Fixed amount – risk is a fixed dollar amount (Fixed risk ($)).
Account risk %
Risk per trade as a percentage of account size (e.g. 1.0 for 1%).
Fixed risk ($)
Fixed risk per trade in dollars when using Fixed amount mode.
Micro factor (vs mini)
How much a micro contract is worth relative to a mini.
Example:
0.1 → one micro moves 1/10 of one mini.
Risk Info label
For each new trade, a label is shown above the boxes with:
Stop distance in price and $ risk per mini
Max risk allowed for the trade
Suggested mini and micro size
Text like:
Suggested: 2 mini
Suggested: 5 micro
or Suggested: no trade
This makes the script especially useful for prop-firm rules or strict risk discipline.
🎨 9. Visual Style (Boxes, Labels, ORB Lines)
Group: “Box & Label Style (Trade)”
Label font size (Very small, Small, Normal, Large)
Entry label BG / text color
Stop label BG / text color
TP label BG / text color
Risk info BG / text color
Risk box color (entry–stop zone)
Reward box color (entry–TP zone)
Group: “ORB Style”
ORB high line color
ORB low line color
ORB line width
ORB label font size
ORB label background color
ORB label text color
Show ORB midline
ORB midline color / width / style (Solid / Dashed / Dotted)
⚠️ 10. Alerts
Group: “Alerts”
The script defines three alert conditions:
Long entry FVG breakout
Triggered when a new long signal appears.
Short entry FVG breakout
Triggered when a new short signal appears.
FVG entry (long/short)
Generic alert for any new signal (long or short).
To use them:
Add the indicator to the chart.
Open the Alerts dialog → “Condition”.
Select this script and one of the alert conditions.
Set your preferred expiration and notification settings.
Alerts only fire when Enable FVG entry signals, boxes & alerts is on.
🧩 11. How the trading logic flows (summary)
Build ORB on 1-minute data during the selected session.
Optionally reject the day if ORB is outside the ATR bounds.
Wait for a breakout (close above high or below low), respecting HTF trend filter.
After breakout, look for the first valid FVG in that direction:
Outside the ORB (unless breakout FVG allowed inside)
Confirmed by the next candle (no full reclaim)
Once confirmed:
Compute entry, stop, target.
Draw risk/reward boxes and all labels.
Optionally show HTF signal label over the risk info.
Trigger alerts if enabled.
If you disable FVG signals, only steps 1–3 (plus dashboard) are effectively active.
⚠️ 12. Notes & Disclaimer
Script is intended for intraday trading up to 15-minute timeframes.
All signals are mechanical and do not guarantee profitability.
Always backtest and forward-test on your own data before risking real money.
This script is for educational purposes only and is not financial advice.
🚀 Quick-start guide
Add the script to your chart
Use an intraday timeframe ≤ 15 minutes (1m, 3m, 5m, 15m).
Works best on liquid indices, futures, FX and large-cap stocks.
Set the Morning Range
In “Morning Range Session” choose the exchange’s opening window.
Examples
US index futures (CME): 08:30–08:45 or 08:30–08:35
US stocks (NYSE/Nasdaq): 09:30–09:45 or 09:30–09:35
The ORB is always calculated on 1-minute data internally, so the range stays accurate on higher intraday charts.
Keep the default filters at first
HTF Trend Filter: ON
EMA length = 20
This will only allow trades in the direction of the dominant D/W/M trend.
ATR Filter: OFF (optional; you can enable later once you’re comfortable).
Use the full trade system
In the FVG group leave
“Enable FVG entry signals, boxes & alerts” = ON
Entry mode: Mid
Stop mode: FVG Candle or PrevBar
Risk/Reward: 2.0 as a starting point.
Set your risk
Turn on “Calculate position size”.
Enter your Account size and choose either:
Risk mode = Percent (e.g. 1.0 = 1% per trade), or
Risk mode = Fixed amount (e.g. $250 per trade).
The risk info label will show:
Stop distance in price and $/contract
Max allowed risk
Suggested mini and micro contract size.
Enable alerts (optional)
Open the Alerts dialog → Condition: this script.
Choose one of:
Long entry FVG breakout
Short entry FVG breakout
FVG entry (long/short)
Choose “Once per bar” or “Once per bar close”, and your preferred notification type.
Replay & journal
Use the TradingView bar replay tool to step through past days.
Focus on:
How the ORB defines the structure.
How the first confirmed FVG outside the ORB behaves.
Whether the risk/TP levels fit your own style and product.
🎛 Recommended settings & profiles
These are starting points, not rules. Always adapt to the instrument and your own risk tolerance.
1. Conservative / Trend-following
Timeframe: 5m or 15m
Morning Range Session: 15-minute ORB around the cash or futures open
FVG
Threshold %: 0.05–0.1 (filter out very small gaps)
Auto threshold: OFF (keep it simple)
Allow breakout FVG partly inside ORB: OFF
Enable FVG entry signals/boxes/alerts: ON
Entry mode: Mid
Stop Logic
Stop mode: Pivot
Pivot left/right: 2–3
Stop buffer: +1–2 ticks
HTF Trend Filter
Enabled: ON
EMA length: 20
ATR Filter
Enabled: ON
Daily ATR length: 14
Min ORB vs ATR: 0.3–0.4
Max ORB vs ATR: 1.2–1.5
Risk Management
Risk mode: Percent
Account risk: 0.5–1.0%
Idea: Only trade when the higher-timeframe trend supports the move and the opening range is of a “normal” size for the current volatility.
2. Balanced / Intraday directional
Timeframe: 3m or 5m
FVG
Threshold %: 0.02–0.05
Auto threshold: ON (lets the script adapt to volatility)
Allow breakout FVG partly inside ORB: ON
(first breakout FVG may partly sit inside the ORB)
Entry mode: Edge
Edge offset (ticks): 0 or +1
Stop Logic
Stop mode: FVG Candle
Stop buffer: 0–1 ticks
HTF Trend Filter
Enabled: ON
ATR Filter
Enabled: OFF (optional)
Risk Management
Risk mode: Percent
Account risk: 1.0–1.5% (if this fits your plan)
Idea: Slightly more aggressive entries at the gap edge, still aligned with HTF trend, but with more flexibility on ATR.
3. Aggressive / Scalping around the ORB
Timeframe: 1m or 3m
FVG
Threshold %: 0.0–0.02
Auto threshold: ON
Allow breakout FVG partly inside ORB: ON
Entry mode: NextOpen or Edge with a negative offset (deeper into the gap)
Stop Logic
Stop mode: PrevBar
Stop buffer: 0 or -1 tick
HTF Trend Filter
Enabled: OFF (or ON but treat as soft guidance)
ATR Filter
Enabled: OFF
Risk Management
Risk mode: Percent
Account risk: lower, e.g. 0.25–0.5% per trade
Idea: More trades and tighter stops. Best for experienced traders who understand the limitations of scalping and whipsaw risk.
Final reminder
All of these are templates, not guarantees:
Always check how the system behaves on your market and session.
Start on replay and demo before trading real money.
Adjust filters (HTF, ATR, thresholds) until the signals fit your personal approach.
Stratégie SMC V18.2 (BTC/EUR FINAL R3 - Tendance)This strategy is an automated implementation of Smart Money Concepts (SMC), designed to operate on the Bitcoin/Euro (BTC/EUR) chart using the 15-minute Timeframe (M15).It focuses on identifying high-probability zones (Order Blocks) after a confirmed Break of Structure (BOS) and a Liquidity Sweep, utilizing an H1/EMA 200 trend filter to only execute trades in the direction of the dominant market flow.Risk management is strict: every trade uses a fixed Risk-to-Reward Ratio (R:R) of 1:3.🧱 Core Logic Components
1. Trend Filter (H1/EMA 200)Objective: To avoid counter-trend entries, which has allowed the success rate to increase to nearly $65\%$ in backtests.Mechanism: A $200$-period EMA is plotted on a higher timeframe (Default: H1/60 minutes).Long (Buy): Entry is only permitted if the current price (M15) is above the trend EMA.Short (Sell): Entry is only permitted if the current price (M15) is below the trend EMA.
2. Order Block (OB) DetectionA potential Order Block is identified on the previous candle if it is
accompanied by an inefficiency (FVG - Fair Value Gap).
3. Advanced SMC ValidationBOS (Break of Structure): A recent BOS must be confirmed by breaking the swing high/low defined by the swing length (Default: 4 M15 candles).Liquidity (Liquidity Sweep): The Order Block zone must have swept recent liquidity (defined by the Liquidity Search Length) within a certain tolerance (Default: $0.1\%$).Point of Interest: The OB must form in a premium zone (for shorts) or a discount zone (for longs) relative to the current swing range (above or below the $50\%$ level of the range).
4. Execution and Risk ManagementEntry: The trade is triggered when the price touches the active Order Block (mitigation).Stop Loss (SL): The SL is fixed at the low of the OB (for longs) or the high of the OB (for shorts).Take Profit (TP): The TP is strictly set at a level corresponding to 3 times the SL distance (R:R 1:3).Lot Sizing: The trade quantity is calculated to risk a fixed amount (Default: 2.00 Euros) per transaction, capped by a Lot Max and Lot Min defined by the user.
Input Parameters (Optimized for BTC/EUR M15)Users can adjust these parameters to modify sensitivity and risk profile. The default values are those optimized for the high-performing backtest (Profit Factor $> 3$).ParameterDescriptionDefault Value (M15)Long. Swing (BOS)Candle length used to define the swing (and thus the BOS).4Long. Recherche Liq.Number of candles to scan to confirm a liquidity sweep.7Tolérance Liq. (%)Price tolerance to validate the liquidity sweep (as a percentage of price).0.1Timeframe TendanceChart timeframe used for the EMA filter (e.g., 60 = H1).60 (H1)Longueur EMA TendancePeriods used for the trend EMA.200Lot Max (Quantité Max BTC)Maximum quantity of BTC the strategy is allowed to trade.0.01Lot Min Réel (Exigence Broker)Minimum quantity required by the broker/exchange.0.00001
A+ Setup Strategy Trendline Features Added:
1. Automatic Trendline Detection
Support Trendline (green) - Connects swing lows
Resistance Trendline (red) - Connects swing highs
Uses pivot points to identify key swing levels
Validates trendlines by counting touches (minimum 3 touches required)
2. Trendline Settings
Show Trendlines - Toggle on/off
Lookback Period - How far back to look for pivots (default: 50 bars)
Min Touches - How many touches needed for valid trendline (default: 3)
3. Trendline Break Detection
Bullish Break - Price breaks above support trendline (marked with small green circle)
Bearish Break - Price breaks below resistance trendline (marked with small red circle)
Generates signals when breaks occur
4. Enhanced A+ Setups
Now includes ULTRA setups - the absolute best trades:
ULTRA BUY Setup (Aqua label):
Bullish FVG + BOS + Volume Spike + Uptrend
PLUS: Support trendline break OR near key support
PLUS: Trendline breakout confirmation
ULTRA SELL Setup (Fuchsia label):
Bearish FVG + BOS + Volume Spike + Downtrend
PLUS: Resistance trendline break OR near key resistance
PLUS: Trendline breakdown confirmation
5. Confluence Integration
The strategy now considers price near trendlines as additional confluence, similar to how it uses daily S/R levels.
6. Additional Alerts
Support Trendline Break
Resistance Trendline Break
ULTRA BUY/SELL Setup alerts
This gives you multiple tiers of signal quality:
Standard A+ Setup - All conditions met
ULTRA A+ Setup - All conditions + trendline break (highest probability)
The trendlines will help you identify major trend reversals and breakouts for even better entry timing!
Bollinger Bands HTF Hardcoded (Len 20 / Dev 2) [CHE]Bollinger Bands HTF Hardcoded (Len 20 / Dev 2) — Higher-timeframe BB emulation with bucket-based length scaling and on-chart diagnostics
Summary
This indicator emulates higher-timeframe Bollinger Bands directly on the current chart by scaling a fixed base length (20) via a timeframe-to-bucket multiplier map. It avoids cross-timeframe requests and instead applies the “HTF feel” by using a longer effective lookback on lower timeframes. Bands use the classic deviation of 2 and the original color scheme (Basis blue, Upper red, Lower green, blue fill). An on-chart table reports the resolved bucket, multiplier, and effective length.
Pine version: v6
Overlay: true
Primary outputs: Basis (SMA), Upper/Lower bands, background fill, optional info table
Motivation: Why this design?
Cross-timeframe Bollinger Bands typically rely on `request.security`, which can introduce complexity, mixed-bar alignment issues, and potential repaint paths depending on how users consume signals intrabar. This design offers a deterministic alternative: a single-series calculation on the chart timeframe, with a hardcoded “HTF emulation” achieved by scaling the BB length according to coarse higher-timeframe buckets. The result is a smoother, slower band structure on low timeframes without external timeframe calls.
What’s different vs. standard approaches?
Baseline: Standard Bollinger Bands with a fixed user length on the current timeframe, or true HTF bands via `request.security`.
Architecture differences:
Fixed base parameters: Length = 20, Deviation = 2.
Bucket mapping derived from the chart timeframe (or manually overridden).
No `request.security`; all computations occur on the current series.
Effective length is “20 × multiplier”, where multiplier approximates aggregation into the chosen bucket.
Diagnostics table for transparency (bucket, multiplier, resolved length, bandwidth).
Practical effect: On lower timeframes, the effective length becomes much larger, behaving like a higher-timeframe Bollinger structure (smoother basis and wider stability), while remaining purely local to the chart series.
How it works (technical)
The script first resolves a target bucket (“Auto” or a manual selection such as 60/240/1D/…/12M). It then computes a multiplier that approximates how many current bars fit into that bucket (e.g., 1m→60m uses mult≈60, 5m→60m uses mult≈12). The effective Bollinger length becomes:
`bb_len = 20 mult` (clamped to at least 1)
Using the effective length, it calculates:
`basis = ta.sma(src, bb_len)`
`dev = 2 ta.stdev(src, bb_len)`
`upper = basis + dev`
`lower = basis - dev`
A “bandwidth” diagnostic is also computed as `(upper-lower) / basis` (guarded against division by zero) and shown in the table as a percentage. A persistent table object is created/deleted based on the visibility toggle and updated only on the last bar for performance.
Parameter Guide
Source — Input series for the bands — Default: Close
Use close for classic behavior; smoother sources reduce responsiveness.
Bucket — HTF bucket selection — Default: Auto
Auto derives a bucket from the chart timeframe; manual selection forces the intended target bucket.
Offset — Plot offset — Default: 0
Shifts plots forward/back for visual alignment, displayed in the data window.
Table X / Table Y — Table anchor — Default: Right / Top
Places the diagnostics table in one of nine anchor points.
Table Size — Table text size — Default: Normal
Use small on dense charts, large for presentations.
Dark Mode — Table theme — Default: Enabled
Switches table palette for readability against chart background.
Show Table — Toggle diagnostics table — Default: Enabled
Disable for a cleaner chart.
Reading & Interpretation
Basis (blue): The moving average centerline of the bands (SMA of effective length).
Upper (red) / Lower (green): ±2 standard deviations around the basis using the same effective length.
Fill (blue tint): Visual band zone to quickly see compression/expansion.
Interpretation staples:
Price riding the upper band suggests strong bullish pressure; riding the lower band suggests strong bearish pressure.
Band expansion indicates rising volatility; contraction indicates volatility compression.
Mean reversion setups often key off the basis and re-entries from outside bands, while breakout/trend setups often key off sustained band rides.
Diagnostics table:
HTF Tag: Human-readable label showing the current timeframe → bucket mapping.
Bucket: The resolved target bucket (Auto result or manual selection).
Multiplier: The integer factor applied to the base length.
Len/Dev: Shows base length (20) and the effective length result plus deviation (2).
Bandwidth: Normalized width of the band (percent), useful for spotting squeezes.
Practical Workflows & Combinations
HTF context on LTF charts: Use this as “slow structure” bands on 1m–15m charts without requesting HTF data.
Squeeze detection: Watch bandwidth shrink to historically low levels, then look for break/hold outside bands.
Trend filtering: Favor long bias when price stays above the basis and repeatedly respects it; favor short bias when below.
Confluence: Combine with market structure (swing highs/lows), volume tools, or a trend filter (e.g., a longer MA) for confirmation.
Behavior, Constraints & Performance
Repaint/confirmation: No cross-timeframe requests. Values can still evolve intrabar and settle on close, as with any indicator computed on live bars.
History requirements: Very large effective lengths need sufficient historical bars; expect a warm-up period after loading or switching symbols/timeframes.
Known limits: Because the method approximates HTF behavior by scaling lookback, it is not identical to true HTF Bollinger Bands computed on aggregated candles. In particular, volatility and mean can differ slightly versus a real HTF series.
Sensible Defaults & Quick Tuning
Default workflow:
Bucket: Auto
Source: Close
Table: On (until you trust the mapping), then optionally off
If bands feel too slow on your timeframe: choose a smaller bucket (e.g., 60 instead of 240).
If bands feel too reactive/noisy: choose a larger bucket (e.g., 1D or 3D).
If chart looks cluttered: hide the table; keep only the bands and fill.
What this indicator is—and isn’t
This is a Bollinger Band visualization layer that emulates higher-timeframe “slowness” via deterministic length scaling. It is not a complete trading system and does not include entries, exits, sizing, or risk management. Use it as context alongside your execution rules and protective stops.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino.
Dynamic Support & Resistance ZonesDynamic Support & Resistance Zones
Overview
This indicator automatically detects and visualizes dynamic support and resistance zones based on pivot point analysis. Unlike simple horizontal lines, these zones adapt to market volatility using ATR and track how many times price has respected each level—giving you a real-time strength score for every zone.
How It Works
The indicator identifies swing highs and lows using pivot detection, then creates zones around these price levels. Each zone is continuously monitored for:
Touches: Every time price enters the zone and reverses, the touch count increases
Strength: A 0-100% score based on touch count and recency (zones fade over time if untested)
Breaks: When price closes beyond the zone for consecutive bars, it's marked as broken and removed
Nearby zones of the same type automatically merge to reduce clutter, and only the strongest zones are displayed based on your settings.
Features
🎯 Smart Zone Detection
Pivot-based identification of key price levels
ATR-adaptive zone width (adjusts to volatility)
Automatic merging of overlapping zones
📊 Strength Scoring System
Each zone rated 0-100% based on touches + time decay
Stronger zones appear more opaque
Weak/old zones automatically removed
🔔 Built-in Alerts
Alert when price approaches a zone
Alert when price breaks through a zone
📋 Info Panel
Shows count of active resistance/support zones
Displays nearest S/R levels above and below current price
Settings
Detection Settings
Pivot Lookback Length - Higher values find stronger but fewer levels (default: 10)
Zone Width (%) - Width of each zone as % of price (default: 0.5%)
Max Zones to Display - Limits visual clutter (default: 8)
Merge Distance (%) - Zones within this % are combined (default: 1.0%)
Zone Strength
Min Touches for Valid Zone - Zones need this many touches to display (default: 2)
Strength Decay (bars) - How quickly zones lose strength over time (default: 100)
Break Confirmation Bars - Consecutive closes needed to confirm a break (default: 2)
Visual Settings
Customize resistance/support colors
Toggle labels and strength display
Option to extend zones into the future
How to Use
For Entries:
Look for confluence when price approaches a high-strength zone (70%+)
Zones with 3+ touches have historically acted as strong reversal points
Use the "approaching zone" alert to get notified before price reaches key levels
For Exits/Targets:
Set profit targets at the nearest resistance (for longs) or support (for shorts)
The info panel shows these levels in real-time
For Breakout Trading:
Watch for breaks of high-touch zones—these often lead to momentum moves
Use the "broke zone" alert to catch breakouts as they happen
Best Practices
On higher timeframes (4H, Daily): Use higher pivot lookback (15-20) for major levels
On lower timeframes (5m, 15m): Use lower pivot lookback (5-8) for scalping levels
For volatile assets: Increase zone width to 1-2%
For ranging markets: Lower min touches to 1 to see more potential levels
Notes
Zones are drawn from the time they were created, extending right
The indicator uses timestamps (not bar indices) so it works on any history length
Broken zones are automatically cleaned up to keep your chart clear
Tip: Combine with volume analysis or momentum indicators for confirmation before trading S/R levels.
If you find this indicator useful, please leave a comment with your feedback or suggestions for improvements!
The 'Qualified' POI Scorer [PhenLabs]📊 The “Qualified” POI Scorer (Q-POI)
Version: PineScript™ v6
📌 Description
The “Qualified” POI Scorer helps intermediate traders overcome "analysis paralysis" by filtering Smart Money Concepts (SMC) structures based on their probability. Instead of flooding your chart with every possible Order Block, this script assigns a proprietary “Quality Score” (0-100) to each zone. It analyzes the strength of the displacement, the presence of imbalances (FVG), and liquidity mechanics to determine which zones are worth your attention. It is designed to clean up your charts and enforce discipline by visually fading out low-quality setups.
🚀 Points of Innovation
Dynamic “Glass UI” Transparency that automatically fades weak zones based on their score.
Proprietary Scoring Algorithm (0-100) based on three distinct institutional factors.
Visual Icon System that prints analytical context (💧— 🚀/🐌—🧱) directly on the chart.
Automated Mitigation Tracking that changes the visual state of zones after they are tested.
Displacement Velocity calculation using ATR to verify institutional intent.
🔧 Core Components
Liquidity Sweep Engine: Detects if a pivot point grabbed liquidity from the previous X bars before reversing.
FVG Validator: Checks if the move away from the zone created a valid Fair Value Gap.
Momentum Scorer: Calculates the size of the displacement candle relative to the Average True Range (ATR).
🔥 Key Features
Quality Filtering: Automatically hides or dims zones that score below 50 (user configurable).
State Management: Zones turn grey when mitigated and delete themselves when invalidated.
Visual Scorecard: Displays the exact numeric score on the zone for quick decision-making.
Time-Decay Logic: Keeps the chart clean by managing the lifespan of old zones.
🎨 Visualization
High Score Zones (80-100): Display as bright, semi-solid boxes indicating high probability.
Medium Score Zones (50-79): Display as translucent “glass” boxes.
Low Score Zones (<50): Display as faint “ghost” boxes or are completely hidden.
Rocket Icon (🚀): Indicates high momentum displacement.
Snail Icon (🐌): Indicates low momentum displacement.
Drop Icon (💧): Indicates the zone swept liquidity.
Brick Icon (🧱): Indicates the zone is supported by an FVG.
📖 Usage Guidelines
Swing Structure Length (Default: 5): Controls the sensitivity of the pivot detection; lower numbers create more zones, higher numbers find major swing points.
ATR Length (Default: 14): Determines the lookback period for calculating relative momentum.
Minimum Quality Score (Default: 50): The threshold for which zones are considered “valid” enough to be fully visible.
Bullish/Bearish Colors: Fully customizable colors that adapt their own transparency based on the score.
Show Weak Zones (Default: False): Toggles the visibility of zones that failed the quality check.
✅ Best Use Cases
Filtering noise during high-volatility sessions by focusing only on Score 80+ zones.
Confirming trend continuation entries by looking for the Rocket (🚀) momentum icon.
Avoiding “stale” zones by ignoring any box that has turned grey (Mitigated).
⚠️ Limitations
The indicator is reactive to closed candles and cannot predict news-driven spikes.
Scoring is based on technical structure and does not account for fundamental drivers.
In extremely choppy markets, the ATR filter may produce lower scores due to lack of displacement.
💡 What Makes This Unique
It transforms subjective SMC analysis into an objective, quantifiable score.
The visual hierarchy allows traders to assess chart quality in milliseconds without reading data.
It integrates three separate SMC concepts (Liquidity, Imbalance, Structure) into a single tool.
🔬 How It Works
Step 1: The script identifies a Swing High or Low based on your length input.
Step 2: It looks backward to see if that swing swept liquidity, and looks forward to check for an FVG and displacement.
Step 3: It calculates a weighted score (30pts for Sweep, 30pts for FVG, 40pts for Momentum).
Step 4: It draws the zone with a transparency level designated by the score and appends the relevant icons.
💡 Note:
For the best results, use this indicator on the timeframe you execute trades on (e.g., 15m or 1h). Do not use it to find entries on the 1m chart if your analysis is based on the 4h chart.
Orbital Barycenter Matrix @darshaksscThe Orbital Barycenter Matrix is a visual, informational-only tool that models how price behaves around a dynamically calculated barycenter —a type of moving equilibrium derived entirely from historical price data.
Instead of focusing on signals, this indicator focuses on market structure symmetry, distance, compression, expansion, and volatility-adjusted movement.
This script does not predict future price and does not provide buy/sell signals .
All values and visuals come solely from confirmed historical data , in full compliance with TradingView policy.
📘 How the Indicator Works
1. Dynamic Barycenter (Core Mean Line)
The barycenter is calculated from a smoothed blend of historical price components.
It represents the center of mass around which price tends to oscillate.
This is not a forecast line—only a representation of historical average behavior.
2. Orbital Rings (Distance Zones)
Around the barycenter, the indicator draws several “orbital rings.”
Each ring shows a volatility-scaled distance from the barycenter using ATR-based calculations.
These rings help visualize:
How far price has drifted from its historical center
Whether price is moving in an inner, mid, or outer region
How volatility influences the spacing of the rings
Rings do not imply future targets and are informational only.
3. Orbital Extension Range
Beyond the outermost ring, a wider band (extension range) shows a high-volatility reference distance.
It represents extended displacement relative to past price behavior—not a projected target.
4. Orbit Trail (Motion Trace)
The Orbit Trail plots small circles behind price, helping visualize how price has moved through the orbital regions over time.
Colors adjust with “pressure” (distance from center), making compression and expansion easy to observe.
5. Satellite Nodes (Swing Markers)
Confirmed swing highs and lows (using fixed pivots) are marked as small dots.
Their color reflects the orbital zone they formed in, giving context to how significant or extended each pivot was.
These swing markers do not repaint because they use confirmed pivots.
6. Pressure & Distance Calculations
The indicator converts price displacement away from the barycenter into a pressure metric, scaled between 0%–100%.
Higher pressure means price is further from its historical center relative to volatility.
The dashboard displays:
Zone classification
ATR-based distance
Pressure level
A small intensity gauge
All are informational readings—no direction or forecast.
📊 Key Features
✔ Dynamic barycenter core
✔ Up to four orbital rings
✔ Informational orbital extension band
✔ Visual orbit trail showing recent movement
✔ Non-repainting satellite swing nodes
✔ Distance & pressure analytics
✔ Fully adjustable HUD
✔ Always-visible floating dashboard (screen-anchored)
✔ Zero repainting on confirmed elements
✔ 100% sourced from historical data only
✔ Policy-safe: no predictions, no signals, no targets
🎯 What to Look For
1. How close price is to the barycenter
This can reveal whether price is in:
The inner region
The mid zone
The outer region
The extended field
2. Pressure level
Shows how “stretched” price is relative to its past behavior.
3. Satellite nodes
Indicate where confirmed pivots formed and in which orbital band.
4. Ring interactions
Observe how price moves between rings—inside, outside, or oscillating around them.
5. Color changes in the orbit trail
These show changes in market compression/expansion.
🧭 How to Read the Indicator
Inner Orbit
Price close to its historical equilibrium.
Mid Orbit
Moderate displacement from typical range.
Outer Orbit
Historically extended movement.
Beyond Extension Field
Price has moved further than usual relative to historical volatility.
These are descriptive conditions only , not trade recommendations.
🛠 How to Apply It on the Chart
Use the barycenter to understand where price has historically balanced.
Observe how volatility changes the spacing between rings.
Use pressure readings to identify when price is compressed, neutral, or extended.
Use swing nodes to contextualize historical pivot formation.
Watch how price interacts with rings to better understand rhythm, velocity, and structural behavior.
This tool is meant to enhance visual understanding—not to generate trade entries or exits.
⚠️ Important Disclosure
This indicator is strictly informational.
It does not predict or project future price movement.
It does not provide buy/sell/long/short signals.
All lines, zones, and values are derived solely from past market data.
Any interpretation is at the user’s discretion.
Change in State of Delivery CISD [AlgoAlpha]🟠 OVERVIEW
This script tracks how price “changes delivery” after failed attempts to push in one direction. It builds swing levels from pivots, watches for those levels to be wicked, and then checks if price delivers cleanly in the opposite direction. When the pattern meets the script’s tolerance rules, it marks a Change in State of Delivery (CISD). These CISD levels are drawn as origin lines and are used to spot shifts in intent, failed pushes, and continuation attempts. A CISD becomes stronger when it forms after opposing liquidity is swept within a defined lookback.
🟠 CONCEPTS
The script first defines structure using swing highs/lows. These levels act as potential liquidity points. When price wicks through a swing, the script registers a mitigation event. After this, it looks for a reversal-style candle sequence: a failed push, followed by a counter-move strong enough to pass a tolerance ratio. This ratio compares how far price expanded away from the failed attempt versus the counter-move that followed. If the ratio is high enough, this becomes a CISD. The idea is simple: liquidity interaction sets context , and the tolerance logic identifies actual intent . CISD levels and sweep markers combine these two ideas into a clean map of where delivery flipped.
🟠 FEATURES
Liquidity tracking: marks swing highs/lows and updates them until expiry
Liquidity sweep confirmation when CISD aligns with recent mitigations
Alert conditions for all key events: mitigations, CISDs, and strong CISDs
🟠 USAGE
Setup : Add the script to your chart. Use it on any timeframe where swing behavior matters. Set the Swing Period for how wide a pivot must be. Set Noise Filter to control how strict the CISD detection is. Liquidity Lookback defines how recent a wick must be to confirm a sweep.
Read the chart : Origin lines mark where the CISD began. A green line signals bullish intent; a red line signals bearish intent. ▲ and ▼ shapes show CISDs that form after liquidity is swept, these mark strong signals for potential entry. Swing dots show recent swing highs/lows. Candle colors follow the latest CISD trend.
Settings that matter : Increasing Swing Period produces fewer but stronger swings. Raising Noise Filter requires cleaner counter-moves and reduces false CISDs. Liquidity Lookback controls how strict the sweep confirmation is. Expiry Bars decides how long swing levels remain active.
Dresteghamat:Adaptive Multi-TF Decision Engine**Dresteghamat: Adaptive Multi-Timeframe Decision Engine**
This open-source indicator is an algorithmic decision-support system designed to filter market noise by quantifying three core market dimensions: **Regime**, **Direction**, and **Exhaustion**.
**⚠️ Technical Note on Originality:**
This script solves the "Timeframe Irrelevance" problem found in standard dashboards. Instead of using static HTF references, it implements a custom **"Adaptive Context Engine"** (see lines 245-270 in source code). It calculates the user's current `timeframe.multiplier` and dynamically maps the mathematically relevant Higher Timeframes.
* *Innovation:* A 5m chart automatically weights 15m/1H structure, whereas a 1H chart weights 4H/Daily structure. This dynamic logic is proprietary and ensures contextual accuracy.
---
### 🛠️ Logic & Calculation Methodology
The script does not simply overlay indicators. It processes raw market data through a **Weighted Scoring Engine** (lines 275-285) to output a unified market state.
**1. Regime Identification (Volatility Normalized)**
We calculate a custom "Volatility Ratio" to distinguish Trend vs. Range regimes.
* **Logic:** `Range / Smoothed_ATR`.
* **Function:** If Ratio > 2.0, the market is in Expansion (Trend). If < 1.2, it is in Compression (Range). This normalizes volatility across assets (Crypto/Forex/Stocks).
**2. Directional Bias (Composite Metric)**
Direction is calculated via a voting system of three sub-components (lines 80-130):
* **Structural Pivots:** Detects Swing Highs/Lows using a 25-bar lookback to define market structure.
* **Cumulative Body Delta:** Tracks the net buying/selling pressure within candle bodies.
* **Micro-Flow:** A short-term (5-bar) momentum filter to detect immediate order flow shifts.
**3. Exhaustion Model (Risk Management)**
The script prevents late entries by calculating an "Exhaustion Score" (lines 150-200). It aggregates:
* **VRSD (Volatility Regime Shift):** Detects when volatility expands > 2 standard deviations (Mean Reversion risk).
* **Volume Decay (VEFF):** Identifies Divergence where price makes new highs on declining Volume MA.
* **RSI/Impulse Divergence:** Standard momentum divergence logic.
**4. The Decision Output (MODE)**
The dashboard renders a final signal based on a hierarchical algorithm:
* **BUY/SELL ONLY:** Triggered when Current Momentum aligns with the Dynamically Selected HTF Structure AND the Exhaustion Score is low.
* **PULLBACK:** Triggered when HTF Structure is bullish, but Current Momentum is bearish (indicating a corrective phase).
* **HTF EXHAUST:** Overrides signals when the Higher Timeframe metrics hit extreme levels.
* **WAIT:** Default state during Range Regimes or conflicting signals.
---
### 📊 Usage Guide
1. Apply to chart (Auto-adapts to any timeframe).
2. **Status Column:** Shows the raw health of the trend (Strong/Weakening/Exhausted).
3. **MODE Column:** Displays the final actionable bias based on the scoring algorithm.
**Disclaimer:** This tool provides statistical analysis based on historical data. It does not guarantee future results.
reversalLibrary "reversals"
psar(af_start, af_increment, af_max)
Calculates Parabolic Stop And Reverse (SAR)
Parameters:
af_start (simple float) : Initial acceleration factor (Wilder's original: 0.02)
af_increment (simple float) : Acceleration factor increment per new extreme (Wilder's original: 0.02)
af_max (simple float) : Maximum acceleration factor (Wilder's original: 0.20)
Returns: SAR value (stop level for current trend)
fractals()
Detects Williams Fractal patterns (5-bar pattern)
Returns: Tuple with fractal values (na if no fractal)
swings(lookback, source_high, source_low)
Detects swing highs and swing lows using lookback period
Parameters:
lookback (simple int) : Number of bars on each side to confirm swing point
source_high (float) : Price series for swing high detection (typically high)
source_low (float) : Price series for swing low detection (typically low)
Returns: Tuple with swing point values (na if no swing)
pivot(tf)
Calculates classic/standard/floor pivot points
Parameters:
tf (simple string) : Timeframe for pivot calculation ("D", "W", "M")
Returns: Tuple with pivot levels
pivotcam(tf)
Calculates Camarilla pivot points with 8 levels for short-term trading
Parameters:
tf (simple string) : Timeframe for pivot calculation ("D", "W", "M")
Returns: Tuple with pivot levels
pivotdem(tf)
Calculates d-mark pivot points with conditional open/close logic
Parameters:
tf (simple string) : Timeframe for pivot calculation ("D", "W", "M")
Returns: Tuple with pivot levels (only 3 levels)
pivotext(tf)
Calculates extended traditional pivot points with R4-R5 and S4-S5 levels
Parameters:
tf (simple string) : Timeframe for pivot calculation ("D", "W", "M")
Returns: Tuple with pivot levels
pivotfib(tf)
Calculates Fibonacci pivot points using Fibonacci ratios
Parameters:
tf (simple string) : Timeframe for pivot calculation ("D", "W", "M")
Returns: Tuple with pivot levels
pivotwood(tf)
Calculates Woodie's pivot points with weighted closing price
Parameters:
tf (simple string) : Timeframe for pivot calculation ("D", "W", "M")
Returns: Tuple with pivot levels
Supply & Demand ZonesThis indicator detects high-probability supply and demand zones using a multi-step smart money concept approach:
Liquidity Sweep Detection: Identifies when price sweeps above a pivot high (supply setup) or below a pivot low (demand setup), capturing liquidity grabs by institutional traders.
Displacement Confirmation: Requires a strong displacement candle (measured by ATR and body percentage) or fair value gap (FVG/imbalance) in the opposite direction after the sweep.
Volume Confirmation: Optional filter ensures zones form only when volume exceeds the user-defined threshold, indicating institutional participation.
Smart Filtering: Built-in logic prevents overlapping zones, enforces minimum spacing between signals, and requires confirmation bars to eliminate false signals.
Zone Lifecycle Management: Zones are automatically removed when price closes through them with momentum. Breached zones can optionally "flip" to the opposite type when re-tested with strong displacement.
✨ Key Features
Clean Visual Display: Small "D" (Demand) and "S" (Supply) labels with shaded zone boxes
Non-Repainting: All signals use confirmed historical data—no lookahead or repainting
Volume Filter: Optional confirmation using volume spike detection
Zone Flip Logic: Breached demand zones can become supply (and vice versa) when violated
Overlap Prevention: Smart algorithm prevents clustered or duplicate zones
Confirmation Delay: Configurable wait period after sweep to confirm genuine setups
Customizable Inputs: Adjust pivot sensitivity, displacement thresholds, volume filters, and more
Alert Ready: Built-in alert conditions for new supply and demand zone formations
🎯 How to Add to Your Chart
Favorite the Indicator: Click the star icon to add this script to your favorites
Open Your Chart: Navigate to the asset and timeframe you want to trade (works best on 5m-1H intraday charts)
Add Indicator: Click "Indicators" at the top, search for "Supply & Demand Zones (Smart Filtered)", and add to chart
Customize Settings: Click the gear icon ⚙️ to adjust inputs based on your trading style and instrument volatility
Set Alerts: Right-click the indicator name → "Add alert" → Select "Supply Zone" or "Demand Zone" conditions
📖 How to Use
Demand Zones (Green "D" Labels):
Price swept below a swing low (liquidity grab)
Strong bullish displacement or imbalance followed
Trading Action: Look for LONG entries when price returns to the zone or on immediate continuation
Stop Loss: Place just below the zone or sweep low
Target: Next resistance level, supply zone, or risk-reward ratio target
Supply Zones (Red "S" Labels):
Price swept above a swing high (liquidity grab)
Strong bearish displacement or imbalance followed
Trading Action: Look for SHORT entries when price returns to the zone or on immediate continuation
Stop Loss: Place just above the zone or sweep high
Target: Next support level, demand zone, or risk-reward ratio target
Flipped Zones (Orange Labels):
Previous demand/supply zone was broken with strong momentum
Zone has flipped polarity and may now act as the opposite type
Trading Action: Exercise caution—wait for additional confirmation before trading flipped zones
🔍 What to Look For
High-Quality Setups:
Zone forms with above-average volume (check volume filter is enabled)
Clear liquidity sweep visible on the chart
Strong displacement candle with large body percentage
Zone aligns with overall market trend or key structure levels
Multiple timeframe confirmation (check higher timeframe for context)
Avoid These Setups:
Zones forming in choppy, low-volume conditions
Multiple overlapping zones in the same area (indicator filters these automatically)
Zones that appear immediately after news events (set confirmation bars higher)
Counter-trend zones without additional confluence
⚙️ Recommended Settings by Timeframe
5-Minute Charts (Scalping):
Pivot Lookback: 3/3
Min Displacement ATR: 0.9
Confirmation Bars: 1
Min Zone Spacing: 3-5 bars
Volume Threshold: 1.2x
15-Minute Charts (Intraday):
Pivot Lookback: 4/4 (default)
Min Displacement ATR: 1.0 (default)
Confirmation Bars: 2 (default)
Min Zone Spacing: 5-8 bars
Volume Threshold: 1.2x
1-Hour Charts (Swing Trading):
Pivot Lookback: 5/5
Min Displacement ATR: 1.2-1.5
Confirmation Bars: 3
Min Zone Spacing: 8-12 bars
Volume Threshold: 1.3x
💡 Trading Tips & Best Practices
Combine with Price Action: Use this indicator alongside candlestick patterns, support/resistance, and trendlines for confirmation
Multiple Timeframe Analysis: Check higher timeframes for overall bias and major zones
Volume is Key: Enable volume filter to focus on institutional-backed moves
Risk Management: Always use stop losses and proper position sizing
Backtesting: Test settings on your preferred instruments and timeframes before live trading
Context Matters: Consider market conditions, news events, and session times
Wait for Confirmation: Don't rush entries—wait for price reaction at the zone
⚠️ Important Disclaimers
Educational Purpose Only: This indicator is provided for educational and informational purposes. It does not constitute financial advice, investment recommendations, or trading signals.
No Guarantees: Past performance and backtested results do not guarantee future results. Trading involves substantial risk of loss.






















